package com.uzai.console.vo.md.mdactivity;

import com.uzai.console.constant.Const;
import com.uzai.console.vo.md.mdgoods.MdGoodsVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/**
 * @Auther: liuqi
 * @Date: 2021/8/10 14:58
 * @Description:
 */
@ApiModel("返回免单活动信息列表")
@Data
public class MdActivityVo {
    @ApiModelProperty("主键ID")
    private Long id;

    @ApiModelProperty("活动来源：0私有，1官方")
    private Integer source;

    @ApiModelProperty("活动id")
    private Long activityId;

    @ApiModelProperty("活动类型(0-新人活动;1-日常活动)")
    private int activityType;

    @ApiModelProperty("活动名称")
    private String name;

    @ApiModelProperty("活动图片")
    private String imgUrl;

    @ApiModelProperty("触发指令列表")
    private List<String> commandList;

    @ApiModelProperty("免单配置方案id")
    private Long configId;

    @ApiModelProperty("免单配置方案名称")
    private String configName;

    @ApiModelProperty("活动场景（0-群组活动；1-私聊活动）")
    private Integer activityScenes;

    @ApiModelProperty("减免方式(0-淘礼金；1-收货后返余额)")
    private Integer awardModel;

    @ApiModelProperty("淘礼金创建方式(0-买家兑换时创建；1-活动当天0点自创建；2-手动导入）")
    private Integer amoygoldType;

    @ApiModelProperty("限制时间(多少小时之内兑换,等于0表示不限制)")
    private Integer limitHours;

    @ApiModelProperty("限制次数(多少小时之内兑换次数,等于0表示不限制)")
    private Integer limitTimes;

    @ApiModelProperty("用户标签JSON")
    private String userTags;

    @ApiModelProperty("用户标签列表")
    private List<Long> userTagsList;

    @ApiModelProperty("活动开始时间")
    private Integer startTime;

    @ApiModelProperty("活动结束时间")
    private Integer endTime;

    @ApiModelProperty("运行状态（0-未开始；1-进行中；2-暂停中；3-已结束）")
    private Integer status;

    @ApiModelProperty("运行状态名称（0-未开始；1-进行中；2-暂停中；3-已结束）")
    private String statusName;

    @ApiModelProperty("活动链接")
    private String activityUrl;

    @ApiModelProperty("创建时间")
    private Integer createTime;

    @ApiModelProperty("选择免单商品列表")
    private List<MdGoodsVo> mdGoodsVoListList;

    public String getActivityUrl() {
        return String.format(Const.SystemUrl.MD_ACTIVITY_URL, getId());
    }
}
